package com.unknownman.block.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.fasterxml.jackson.annotation.JsonInclude;
import java.math.BigInteger;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * NFT合约配置
 * </p>
 *
 * @author xhy
 * @since 2021-10-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="TContractConfig对象", description="NFT合约配置")
public class TContractConfig implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "contract_config_id", type = IdType.AUTO)
    private Long contractConfigId;

    private Long chainConfigId;

    @ApiModelProperty(value = "NFT合约地址")
    private String contractAddress;

    @ApiModelProperty(value = "合约类型：10：ERC20合约 20：REC721合约 30：其他合约")
    private Integer contractType;

    @ApiModelProperty(value = "合约OWNER")
    private String contractOwner;

    @ApiModelProperty(value = "名称")
    private String name;

    @ApiModelProperty(value = "符号")
    private String symbol;

    private String abi;

    @ApiModelProperty(value = "erc20代币小数位数")
    private Integer erc20Decimals;

    @ApiModelProperty(value = "合约配置状态(10启用 20禁用)")
    private Integer contractStatus;

    @ApiModelProperty(value = "拓展字段1")
    private String expand1;

    @ApiModelProperty(value = "拓展字段2")
    private String expand2;

    @ApiModelProperty(value = "拓展字段3")
    private String expand3;

    private String createBy;

    private Date createDate;

    private String updateBy;

    private Date updateDate;

    private BigInteger totalSupply;

}
